/**
 *  bug列表：
 *    1. 如果点击修改，再点击添加，modal中会保留修改过的内容
 *           在每次添加时，做modal窗体的初始化操作
 *    2. 在进行修改类操作（修改、审核、撤销）时，如果不选中内容，不会弹出modal
 *           在这种操作时，给出提示---请选择一条数据，再进行相关操作
 *    3. 在添加、修改、审核时，使用的是同一个modal，但标题、form、按钮的显示
 *       应该根据实际需要有所不同
* */
$(document).ready(function () {
    initTable();
    initSelect('#sltTypeForInfo', 'http://test.org/leave/type');
    initSelect('#sltCheckTypeForInfo', 'http://test.org/leave/check_type')
    initSelect('#sltLeaveTypeForQuery', 'http://test.org/leave/type')
    initSelect('#sltCheckTypeForQuery', 'http://test.org/leave/check_type')
    $('#btnAdd').bind('click', btnAddClick);
    $('#btnSubmit').bind('click', btnSubmitClick);
    $('#btnUpdate').bind('click', btnUpdateClick)
    $('#btnSubmitForUpdate').bind('click', btnSubmitForUpdateClick);
    $('#btnCheck').bind('click', btnCheckClick);
    $('#btnSubmitForCheck').bind('click',btnSubmitForCheckClick);
    $('#btnCancel').bind('click',btnCancelClick);
})

function btnCancelClick() {


    if(confirm("是否删除当前数据？")){
        var row = $('#list').bootstrapTable('getSelections')[0];
        var index = row.id;

        var tRow = $('#list tr:eq(' + index + ')');
        tRow.remove();
    }

}


function btnSubmitForCheckClick() {
    var row = $('#list').bootstrapTable('getSelections')[0];
    var index = row.id;

    var tRow = $('#list tr:eq(' + index + ')');


    var check_type =$('#sltCheckTypeForInfo').find('option:selected').text();
    tRow.find('td:eq(4)').text(check_type);

    $('#info').modal('hide');
}
function btnCheckClick() {

    $('#info_header').text("请假单-审核");

    $('#empNameForInfo').attr('readonly', 'readonly')
    $('#empDeptForInfo').attr('readonly', 'readonly')
    $('#sltTypeForInfo').attr('readonly', 'readonly');

    var row = $('#list').bootstrapTable('getSelections')[0];

    $('#empNameForInfo').val(row.emp_name);
    $('#empDeptForInfo').val(row.emp_dept);

    $('#check_group').show();
    $('#btnSubmitForUpdate').hide();
    $('#btnSubmit').hide();

    $('#info').modal();
}

function btnSubmitForUpdateClick() {
    var row = $('#list').bootstrapTable('getSelections')[0];
    var index = row.id;

    var tRow = $('#list tr:eq(' + index + ')');

    var emp_name = $('#empNameForInfo').val();
    tRow.find('td:eq(1)').text(emp_name);

    var emp_dept = $('#empDeptForInfo').val();
    tRow.find('td:eq(2)').text(emp_dept);

    $('#info').modal('hide');

}

function btnUpdateClick() {

    /*  var index =3;

      $('#list tr:eq('+index+')').find("td:eq(2)").text('ted');*/

    $('#check_group').hide();

    $('#info_header').text("修改请假");

    var row = $('#list').bootstrapTable('getSelections')[0];

    $('#empNameForInfo').val(row.emp_name);
    $('#empDeptForInfo').val(row.emp_dept);

    $('#sltTypeForInfo').val(1);

    $('#info').modal();

}

function btnSubmitClick() {

    var tRow = $('<tr></tr>');
    tRow.append('<td><input type="checkbox"/></td>')
    var td_name = $('<td></td>').text($('#empNameForInfo').val());
    tRow.append(td_name)
    var td_dept = $('<td></td>').text($('#empDeptForInfo').val());
    tRow.append(td_dept)

    var leave_type = $('#sltTypeForInfo').find("option:selected").text();
    var td_type = $('<td></td>').text(leave_type);
    tRow.append(td_type);

    tRow.append('<td>未审核</td>');

    $('#list tbody').append(tRow)
    $('#info').modal('hide');
}

function btnAddClick() {

    $('#check_group').hide();

    /*$('#list tr:eq(3)').find("td:eq(2)").text(22)*/

    $('#info').modal();
}

function initSelect(selector, url) {
    $.ajax({
        url: url,
        method: 'get',
        dataType: 'json',
        success: function (data) {
            console.log(data);
            $.each(data, function (index, item) {

                var opt = $('<option></option>')
                    .val(item.id).text(item.name);
                $(selector).append(opt);
            })
        }
    })
}

function initTable() {

    $('#list').bootstrapTable({
        /*  url:'../mock/leaves.json',*/
        url: "http://test.org/leave/list",
        clickToSelect: true,
        singleSelect: true,
        toolbar: '#toolbar',
        columns: columns
    })
}

var columns = [
    {
        checkbox: true
    },
    {
        field: "emp_name",
        title: "员工姓名"
    }, {
        field: "emp_dept",
        title: "员工部门"
    }, {
        field: "leave_type",
        title: "请假类型"
    }, {
        field: "check_type",
        title: "审核状态"
    }
]